The invention relates to computer-assisted design of electronic circuits, and more specifically relates to computer-assisted placement of components based on thermal constraints.
In modern electronic circuit fabrication, electrical components such as semiconductor devices are mounted on printed circuit boards (xe2x80x9cPCBxe2x80x9d), and more recently, within multi-chip modules (xe2x80x9cMCMxe2x80x9d). In printed circuit board technology, semiconductor devices or xe2x80x9cdiesxe2x80x9d are each separately encased in a package, such as the dual in line package (xe2x80x9cDIPxe2x80x9d), having pin connectors extending from the package for physically mounting the component to a circuit board. Multi-chip module or MCM technology further minimizes space consumption by placing several dies on a single substrate within a package enclosing all of the dies. In both technologies, the components of a circuit are interconnected through a series of conductive traces called interconnects. The placement of components on a substrate or PCB and the routing of interconnects among these components is referred to as the xe2x80x9clayoutxe2x80x9d of the circuit design.
The design of circuit layouts in printed circuit board and multi-chip module technology is a complex problem due to the numerous and often conflicting performance goals. In designing a circuit layout, the objective is to place components and route interconnects among them such that timing, electrical, and thermal performance goals are satisfied. Computer-assisted design tools help simplify the design task, but they typically only focus on a small part of the layout problem in isolation. For example, there are separate tools to perform timing, electrical, and thermal analysis on a layout, but these tools are not sufficiently integrated with other tools such as routers and placement programs that create the layout. As a result, a designer typically has to create a number of alternative layouts, in a trial and error fashion, until all of the performance goals are satisfied.
Achieving all of the performance goals is frustrated by conflicting design constraints. For example, placement of components based on electrical and timing constraints conflicts with placement based on thermal constraints. The designer must place components as close together as possible to minimize electrical signal delays. However, to minimize thermal interaction among components, the designer must space the components sufficiently apart or provide various cooling techniques such as introducing thermal vias to remove heat.
Present placement programs known to the inventors do not adequately address the problem of thermal interaction among components. There is a need, therefore, to provide a placement system that incorporates a detailed analysis of a component""s behavior into the placement of the components in a circuit layout.
Circuit designers use placement programs to optimize placement of components in a circuit layout. Such programs employ placement algorithms that seek to provide the best placement for a given number of circuit components. There are a variety of different placement algorithms. In general, placement algorithms attempt to minimize a figure of merit in an attempt to find an optimal placement. The figure of merit can be, for example, the number of nets crossing a predetermined number of cut-lines on the board, the total Manhattan length (the sum of half-perimeter bounding boxes of all nets), or the sum of the distance from all net centroids. Given a figure of merit, there are a number of strategies to minimize it, including using a random initial placement followed by pair-wise swapping, simulated annealing, or greedy methods such as a constructive method. There are a variety of placement algorithms, but none have successfully integrated an accurate thermal analysis.
While thermal analysis tools exist, they have not been successfully used during placement because of their very large computation requirements. Sophisticated thermal analysis programs exist, such as AutoTherm, commercially available from Mentor Graphics, Corp., that provide a very accurate thermal picture of a PCB or MCM design layout. As in sophisticated thermal analysis products like AutoTherm, a detailed thermal analysis takes into account several thermal characteristics such as heat transfer to a substrate in MCM technology, heat transfer through a molding compound, and heat transfer through a bond to name a few. Thermal analysis of this caliber has not been integrated into the placement process because the computational time required to analyze a particular layout makes a thermal analysis completely unacceptable during the placement process.
One approach for integrating thermal analysis in placement without substantially sacrificing speed is described in co-pending U.S. patent application Ser. No. 08/069,148, entitled Method and System for Integrating Component Analysis with Multiple Component Placement. This approach includes performing a thermal analysis of each individual component and then deriving a thermal placement length for the component from this analysis. The thermal placement lengths for components in a design can then be used as placement constraints in an automatic or interactive placement program. This approach is an alternative advantageous method for integrating thermal design considerations into placement. However, this approach is less accurate in some cases because it does not take into account the thermal contribution from surrounding components. In addition, the thermal placement length tends to be an overly conservative constraint on placement.
There is a need therefor for an improved method of integrating thermal analysis with placement.
The invention provides an improved method of integrating thermal analysis with placement. In one embodiment of the invention, thermal response data is computed for components individually on the placement surface and also for a number of locations on the placement surface. During placement of components on the layout, the thermal response data can be used to determine whether a placement meets predefined thermal constraints such as maximum junction temperatures for the components. If the placement satisfies predefined thermal constraints, then it can be used as a potential placement for a design. Otherwise, one or more components can be moved and the placement checked again to determine whether thermal constraints are satisfied.
Since the thermal response data is already computed, the thermal analysis of a given placement can be performed quickly and accurately during placement. In one embodiment, the junction temperature of a component can be computed by summing the contribution of other neighboring components with the component""s own temperature. The thermal response data, such as a temperature distribution, provides temperature values and corresponding coordinates for the temperature values. To support rapid analysis during placement, the thermal response data can be represented in data structures that support searching of the thermal response data and computing a thermal contribution from a neighboring component. The placement can be changed depending on whether placement of a component exceeds its maximum junction temperature. Also, the thermal cost of a placement can be evaluated based on how close each component is to its maximum junction temperature.
In addition to the features outlined above, embodiments of the invention can include a number of different features. To minimize storage requirements, the thermal response data that needs to be stored can be reduced by computing a thermal response within the placement surface and applying it to a variety of locations by shifting the data. During placement, the thermal analysis can be calculated quickly by analyzing only the components that changed position. The range of affect for a component can be confined to an area or xe2x80x9cneighborhoodxe2x80x9d less than the entire placement surface. As such, when this component is moved only the components in its original neighborhood, as well as components in its new neighborhood need to be analyzed. A variety of other alternatives are possible and will become apparent from the following description and accompanying drawings.